package com.ruoyi.domain;

import com.ruoyi.common.core.domain.BaseEntity;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 商品细分#goods_sku_info#同样的商品　又细分出　不同的颜色　包装　等参数不同

 * @TableName goods_sku_info
 */
public class GoodsSkuInfo extends BaseEntity implements Serializable {
    /**
     * 细分商品主键#primary
     */
    private Integer skuId;

    /**
     * 商品#foreign#goods_info=goods_id,goods_name
     */
    private Integer goodsId;

    /**
     * 商品名称
     */
    private String goodsName;

    /**
     * 供应商#foreign#supplier_info=supplier_id,supplier_name
     */
    private Integer supplierId;


    /**
     * 供应商名称
     */
    private String supplierName;

    /**
     * 商品标题
     */
    private String skuTitle;

    /**
     * 原价(市场标价格)
     */
    private Double skuPrice;

    /**
     * 上架状态#state#0=未上架, 1=上架
     */
    private Integer skuState;

    /**
     * 说明
     */
    private String skuInfo;

    /**
     * 最新修改时间
     */
    private Date modifiedTime;

    /**
     * 当前价格
     */
    private Double skuNowPrice;

    /**
     * 增值保障集合
     */
    private String safeguardTypeIds;
    private Integer safeguardTypeId;
    private List<Integer> safeguardTypeIdss;


    private List<Integer> selectedIds;

    private static final long serialVersionUID = 1L;

    @Override
    public String toString() {
        return "GoodsSkuInfo{" +
                "skuId=" + skuId +
                ", goodsId=" + goodsId +
                ", goodsName='" + goodsName + '\'' +
                ", supplierId=" + supplierId +
                ", supplierName='" + supplierName + '\'' +
                ", skuTitle='" + skuTitle + '\'' +
                ", skuPrice=" + skuPrice +
                ", skuState=" + skuState +
                ", skuInfo='" + skuInfo + '\'' +
                ", modifiedTime=" + modifiedTime +
                ", skuNowPrice=" + skuNowPrice +
                ", safeguardTypeIds='" + safeguardTypeIds + '\'' +
                ", safeguardTypeId=" + safeguardTypeId +
                ", safeguardTypeIdss=" + safeguardTypeIdss +
                ", selectedIds=" + selectedIds +
                '}';
    }

    public Integer getSkuId() {
        return skuId;
    }

    public void setSkuId(Integer skuId) {
        this.skuId = skuId;
    }

    public Integer getGoodsId() {
        return goodsId;
    }

    public void setGoodsId(Integer goodsId) {
        this.goodsId = goodsId;
    }

    public String getGoodsName() {
        return goodsName;
    }

    public void setGoodsName(String goodsName) {
        this.goodsName = goodsName;
    }

    public Integer getSupplierId() {
        return supplierId;
    }

    public void setSupplierId(Integer supplierId) {
        this.supplierId = supplierId;
    }

    public String getSupplierName() {
        return supplierName;
    }

    public void setSupplierName(String supplierName) {
        this.supplierName = supplierName;
    }

    public String getSkuTitle() {
        return skuTitle;
    }

    public void setSkuTitle(String skuTitle) {
        this.skuTitle = skuTitle;
    }

    public Double getSkuPrice() {
        return skuPrice;
    }

    public void setSkuPrice(Double skuPrice) {
        this.skuPrice = skuPrice;
    }

    public Integer getSkuState() {
        return skuState;
    }

    public void setSkuState(Integer skuState) {
        this.skuState = skuState;
    }

    public String getSkuInfo() {
        return skuInfo;
    }

    public void setSkuInfo(String skuInfo) {
        this.skuInfo = skuInfo;
    }

    public Date getModifiedTime() {
        return modifiedTime;
    }

    public void setModifiedTime(Date modifiedTime) {
        this.modifiedTime = modifiedTime;
    }

    public Double getSkuNowPrice() {
        return skuNowPrice;
    }

    public void setSkuNowPrice(Double skuNowPrice) {
        this.skuNowPrice = skuNowPrice;
    }

    public String getSafeguardTypeIds() {
        return safeguardTypeIds;
    }

    public void setSafeguardTypeIds(String safeguardTypeIds) {
        this.safeguardTypeIds = safeguardTypeIds;
    }

    public Integer getSafeguardTypeId() {
        return safeguardTypeId;
    }

    public void setSafeguardTypeId(Integer safeguardTypeId) {
        this.safeguardTypeId = safeguardTypeId;
    }

    public List<Integer> getSafeguardTypeIdss() {
        return safeguardTypeIdss;
    }

    public void setSafeguardTypeIdss(List<Integer> safeguardTypeIdss) {
        this.safeguardTypeIdss = safeguardTypeIdss;
    }

    public List<Integer> getSelectedIds() {
        return selectedIds;
    }

    public void setSelectedIds(List<Integer> selectedIds) {
        this.selectedIds = selectedIds;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        GoodsSkuInfo other = (GoodsSkuInfo) that;
        return (this.getSkuId() == null ? other.getSkuId() == null : this.getSkuId().equals(other.getSkuId()))
            && (this.getGoodsId() == null ? other.getGoodsId() == null : this.getGoodsId().equals(other.getGoodsId()))
            && (this.getSupplierId() == null ? other.getSupplierId() == null : this.getSupplierId().equals(other.getSupplierId()))
            && (this.getSkuTitle() == null ? other.getSkuTitle() == null : this.getSkuTitle().equals(other.getSkuTitle()))
            && (this.getSkuPrice() == null ? other.getSkuPrice() == null : this.getSkuPrice().equals(other.getSkuPrice()))
            && (this.getSkuState() == null ? other.getSkuState() == null : this.getSkuState().equals(other.getSkuState()))
            && (this.getSkuInfo() == null ? other.getSkuInfo() == null : this.getSkuInfo().equals(other.getSkuInfo()))
            && (this.getModifiedTime() == null ? other.getModifiedTime() == null : this.getModifiedTime().equals(other.getModifiedTime()))
            && (this.getSkuNowPrice() == null ? other.getSkuNowPrice() == null : this.getSkuNowPrice().equals(other.getSkuNowPrice()))
            && (this.getSafeguardTypeIds() == null ? other.getSafeguardTypeIds() == null : this.getSafeguardTypeIds().equals(other.getSafeguardTypeIds()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getSkuId() == null) ? 0 : getSkuId().hashCode());
        result = prime * result + ((getGoodsId() == null) ? 0 : getGoodsId().hashCode());
        result = prime * result + ((getSupplierId() == null) ? 0 : getSupplierId().hashCode());
        result = prime * result + ((getSkuTitle() == null) ? 0 : getSkuTitle().hashCode());
        result = prime * result + ((getSkuPrice() == null) ? 0 : getSkuPrice().hashCode());
        result = prime * result + ((getSkuState() == null) ? 0 : getSkuState().hashCode());
        result = prime * result + ((getSkuInfo() == null) ? 0 : getSkuInfo().hashCode());
        result = prime * result + ((getModifiedTime() == null) ? 0 : getModifiedTime().hashCode());
        result = prime * result + ((getSkuNowPrice() == null) ? 0 : getSkuNowPrice().hashCode());
        result = prime * result + ((getSafeguardTypeIds() == null) ? 0 : getSafeguardTypeIds().hashCode());
        return result;
    }

}